package com.irdstudio.efp.cus.service.dao;

import java.util.List;

import com.irdstudio.efp.cus.service.domain.CusIndivCreatesTemp;
import com.irdstudio.efp.cus.service.vo.CusIndivCreatesTempVO;

/**
 * DAO Interface: 客户建档信息临时表
 * 
 * @author ligm
 * @date 2019-05-06
 */
public interface CusIndivCreatesTempDao {

	/**
	 * 新增数据
	 * 
	 * @param inCusIndivCreatesTempVo
	 * @return
	 */
	public int insertCusIndivCreatesTemp(CusIndivCreatesTemp cusIndivCreatesTemp);

	/**
	 * 根据主键删除信息
	 * 
	 * @param inCusIndivCreatesTempVo
	 * @return
	 */
	public int deleteByPk(CusIndivCreatesTemp cusIndivCreatesTemp);

	/**
	 * 根据主键更新信息
	 * 
	 * @param inCusIndivCreatesTempVo
	 * @return
	 */
	public int updateByPk(CusIndivCreatesTemp cusIndivCreatesTemp);

	/**
	 * 根据主键查询详情
	 * 
	 * @param cusIndivCreatesTemp
	 * @return
	 */
	public CusIndivCreatesTemp queryByPk(CusIndivCreatesTemp cusIndivCreatesTemp);

	/**
	 * 一级数据权限,默认查看当前用户对应的数据
	 * 
	 * @param cusIndivCreatesTemp
	 * @return
	 */
	public List<CusIndivCreatesTemp> queryAllByLevelOneByPage(CusIndivCreatesTempVO cusIndivCreatesTemp);

	/**
	 * 二级数据权限,默认查看当前用户及所属机构对应的数据
	 * 
	 * @param cusIndivCreatesTemp
	 * @return
	 */
	public List<CusIndivCreatesTemp> queryAllByLevelTwoByPage(CusIndivCreatesTempVO cusIndivCreatesTemp);

	/**
	 * 三级数据权限,默认查看当前用户所在机构及下属机构对应的数据
	 * 
	 * @param cusIndivCreatesTemp
	 * @return
	 */
	public List<CusIndivCreatesTemp> queryAllByLevelThreeByPage(CusIndivCreatesTempVO cusIndivCreatesTemp);

	/**
	 * 四级数据权限,默认预留，便于后续自定义
	 * 
	 * @param cusIndivCreatesTemp
	 * @return
	 */
	public List<CusIndivCreatesTemp> queryAllByLevelFourByPage(CusIndivCreatesTempVO cusIndivCreatesTemp);

	/**
	 * 五级数据权限,默认预留，便于后续自定义
	 * 
	 * @param cusIndivCreatesTemp
	 * @return
	 */
	public List<CusIndivCreatesTemp> queryAllByLevelFiveByPage(CusIndivCreatesTempVO cusIndivCreatesTemp);

	/**
	 * 
	 * 分页查询【 客户建档信息临时表】 <br>
	 * 0.1:ludayong:2019年5月7日 上午9:46:30:新增 <br>
	 * 
	 * @author ludayong
	 * @since 2019年5月7日 上午9:46:30
	 * @date 2019年5月7日 上午9:46:30
	 * @version 0.1
	 */
	public List<CusIndivCreatesTemp> queryByPage(CusIndivCreatesTempVO CusIndivCreatesTemp);

	/**
	 * 
	 * 统计【客户建档信息临时表】数据量 <br>
	 * 0.1:ludayong:2019年5月7日 上午9:46:30:新增 <br>
	 * 
	 * @author ludayong
	 * @since 2019年5月7日 上午9:46:30
	 * @date 2019年5月7日 上午9:46:30
	 * @version 0.1
	 */
	public int queryCount();
}
